package hr_project.hr.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import hr_project.hr.entity.Salary;
import hr_project.hr.entity.Salary_standerd_info;
import hr_project.hr.util.QuerySalary;


/**
 * @author 冯亚倩
 *  薪资标准  dao层接口
 * */

public interface ISalaryDao {
	
	//修改薪资标准
	public void  modSalary(@Param("ss")Salary ss,@Param("slist")List<Salary_standerd_info> slist);
	
	//取消增加薪资标准
	public void  cancleSalary(@Param("ss")Salary ss,@Param("slist")List<Salary_standerd_info> slist);
	
	
	//根据id，查找薪资标准
	public Salary getById(long said);
	
	
	//财务页面：所有工资列表
	public List<Salary> getAll();
	
	
	
	//更新薪资标准
	public void update_sal(Salary ss);
	

	//审核（一审）
	//分页+不定项查询(所有工资列表) 部门经理页面
	  //总条数
	public int getCount1(@Param("qs")QuerySalary qs,@Param("man_id")long man_id);
	  //每页的list
	public List<Salary> getPage1(@Param("qs")QuerySalary qs,@Param("page")int page,@Param("pagesize")int pageSize,@Param("man_id")long man_id);

	
	//审核（二审）
	//分页+不定项查询(所有工资列表) 总经理页面
	  //总条数
	public int getCount2(@Param("qs")QuerySalary qs,@Param("man_id")long man_id);
	  //每页的list
	public List<Salary> getPage2(@Param("qs")QuerySalary qs,@Param("page")int page,@Param("pagesize")int pageSize);

	
	//分页+不定项查询(所有工资列表) 财务页面
	  //总条数
	public int getCount(@Param("qs")QuerySalary qs);
	  //每页的list
	public List<Salary> getPage(@Param("qs")QuerySalary qs,@Param("page")int page,@Param("pagesize")int pageSize);

	//财务---工资待发放页面
	public int getCount_ff(@Param("qs")QuerySalary qs);
	  //每页的list
	public List<Salary> getPage_ff(@Param("qs")QuerySalary qs,@Param("page")int page,@Param("pagesize")int pageSize);
	
	//财务---薪资状态为"已删除"
	public int getCount_del(@Param("qs")QuerySalary qs);
	  //每页的list
	public List<Salary> getPage_del(@Param("qs")QuerySalary qs,@Param("page")int page,@Param("pagesize")int pageSize);

	
	//导出到Excel
	public List<Map<String,Object>> findAll();
	
	
	
}
